package com.soft.line.service;

import com.soft.line.entity.AppletContract;
import com.soft.line.util.MP.AjaxResult;

import java.util.Map;

/**
 * 小程序合同service
 *
 * @author wpb
 * @version 1.0
 * @date 2020/5/26 15:46
 */
public interface AppletContractService {

    /**
     * 获取每个部门的合同总数，
     * 注意：若某个部门下合同数为空，也需要返回此部门id的key，
     *
     * @return
     */
    AjaxResult getContractNum();

    /**
     * 根据部门id获取合同年列表数据
     *
     * @param paraMap 部门编号
     * @return
     */
    AjaxResult getContractYearList(Map<String, Object> paraMap);

    /**
     * 根据部门id和签订年份分页查询合同列表
     *
     * @param paraMap 参数
     * @return
     */
    AjaxResult getContractList(Map<String, Object> paraMap);

    /**
     * 根据合同名称分页模糊查询合同列表
     *
     * @param paraMap 参数
     * @return
     */
    AjaxResult getContractSearchList(Map<String, Object> paraMap);

    /**
     * 根据合同详情信息分页查询合同列表
     *
     * @param paraMap 参数
     * @return
     */
    AjaxResult getContractQueryList(Map<String, Object> paraMap);

    /**
     * 添加合同
     *
     * @param appletContract 参数
     * @return
     */
    AjaxResult addContract(AppletContract appletContract);

    /**
     * 修改合同信息
     *
     * @param appletContract 入参
     * @return
     */
    AjaxResult updateContract(AppletContract appletContract);

    /**
     * 根据合同id查询合同信息
     *
     * @param paraMap 参数
     * @return
     */
    AjaxResult getContract(Map<String, Object> paraMap);

    /**
     * 删除合同信息
     *
     * @param paraMap 参数
     * @return
     */
    AjaxResult deleteContract(Map<String, Object> paraMap);


}
